package com.fc.advbox.entity;

import com.fc.advbox.utils.validator.group.AddGroup;
import com.fc.advbox.utils.validator.group.UpdateGroup;
import io.swagger.annotations.ApiModel;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.hibernate.validator.constraints.NotBlank;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * Created by E7450 on 2018/7/25.
 */
@Getter
@Setter
@ToString
@ApiModel(value = "ADV_USER_TOKEN_ACCT", description = "个人虚拟币账号")
public class UserTokenAcctEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    private Long id;
    private Long userId;        // 用户ID
    @NotBlank(message="账户类型不能为空",  groups = {AddGroup.class, UpdateGroup.class})
    private String accountType; // 账号类型 key / eos / pai
    private String accountName;  // 账号名称或备注
    private BigDecimal totalAmount = BigDecimal.ZERO; // 总数量
    private BigDecimal ableAmount = BigDecimal.ZERO;  // 可用数量
    private BigDecimal deblockingAmount = BigDecimal.ZERO; // 解锁中的数量
    private BigDecimal lockAmount = BigDecimal.ZERO; // 已锁定的数量
    private Integer status; // 状态 1-正常 0-不可用
    private Date createTime; // 创建时间
    private Date updateTime; // 更新时间
}
